﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using PreCommitHook.Datos.Interfaces;

namespace PreCommitHook.Datos.FabricaDatos
{
    public abstract class FabricaDao
    {
        public static FabricaDao ObtenerFabricaDeDao(int tipoFabrica)
        {
            switch (tipoFabrica)
            {
                case 1:
                    return new FabricaSqlServer();
                case 2:
                //return new FabricaMySql();
                default:
                    return null;
            }

        }

        /// <summary>
        /// Declaracion de los metodos abstractos
        /// </summary>
        /// <returns></returns>


        public abstract IDaoAccesoProyecto ObternerDaoProyecto();

        public abstract IDaoAccesoCredencial ObtenerDaoCredencial();

        public abstract IDaoAccesoUsuario ObtenerDaoUsuario();
    }
}
